﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Trentacular.SharePoint.Deployment.Model
{
    public interface IFeature
    {
        IFeatureContainer Parent { get; }
        FeatureDefinition Definition { get; set; }
        bool Activated { get; set; }
    }

    public interface IFeature<TParent, TSelf> : IFeature
        where TParent : IFeatureContainer<TSelf, TParent>
        where TSelf : IFeature<TParent, TSelf>
    {
        new TParent Parent { get; set; }
    }
}
